package com.ship.dispatch.bean.orderPay;

import com.baomidou.mybatisplus.annotation.TableField;
import com.baomidou.mybatisplus.annotation.TableId;
import com.baomidou.mybatisplus.annotation.TableName;
import com.fasterxml.jackson.annotation.JsonFormat;
import com.ship.common.core.base.BaseBean;
import lombok.Data;
import lombok.EqualsAndHashCode;

import java.math.BigDecimal;
import java.util.Date;

/**
 * 支付结算详情表
 */
@Data
@EqualsAndHashCode(callSuper = true)
@TableName("sp_payment_order_detail")
public class SpPaymentOrderDetail extends BaseBean {
    /**
     * 主键
     */
    @TableId
    @TableField("id")
    private Long id;
    /**
     * 支付结算订单id
     */
    @TableField("order_id")
    private Long orderId;
    /**
     * 海油公司
     */
    @TableField("cnooc_corporation")
    private String cnoocCorporation;
    /**
     * 船舶代理公司
     */
    @TableField("ship_agency_corporation")
    private String shipAgencyCorporation;
    /**
     * 船舶名称
     */
    @TableField("ship_name")
    private String shipName;
    /**
     * 预计装载时间
     */
    @TableField("expected_loading_date")
    @JsonFormat(timezone = "GMT+8", pattern = "yyyy-MM-dd HH:mm:ss")
    private Date expectedLoadingDate;
    /**
     * 预计卸载时间
     */
    @TableField("expected_unloading_date")
    @JsonFormat(timezone = "GMT+8", pattern = "yyyy-MM-dd HH:mm:ss")
    private Date expectedUnloadingDate;
    /**
     * 预计装载港
     */
    @TableField("expected_loading_port")
    private String expectedLoadingPort;
    /**
     * 预计卸载港
     */
    @TableField("expected_unloading_port")
    private String expectedUnloadingPort;
    /**
     * 预付款金额
     */
    @TableField("advance_pay_amount")
    private BigDecimal advancePayAmount;
    /**
     * 结余款金额
     */
    @TableField("balance_amount")
    private BigDecimal balanceAmount;
    /**
     * 应付金额
     */
    @TableField("payable_amount")
    private BigDecimal payableAmount;
    /**
     * 预保单信息
     */
    @TableField("advance_policy_info")
    private String advancePolicyInfo;
    /**
     * 预计装货量
     */
    @TableField("estimate_load_volume")
    private BigDecimal estimateLoadVolume;
    /**
     * 预计货物价格
     */
    @TableField("estimate_goods_price")
    private BigDecimal estimateGoodsPrice;
    /**
     * 实际保单信息
     */
    @TableField("actual_policy_info")
    private String actualPolicyInfo;
    /**
     * 实际装载时间
     */
    @TableField("reality_loading_date")
    @JsonFormat(timezone = "GMT+8", pattern = "yyyy-MM-dd HH:mm:ss")
    private Date realityLoadingDate;
    /**
     * 实际装载时间
     */
    @TableField("reality_unloading_date")
    @JsonFormat(timezone = "GMT+8", pattern = "yyyy-MM-dd HH:mm:ss")
    private Date realityUnloadingDate;
    /**
     * 最大峰值
     */
    @TableField("max_peak_value")
    private String maxPeakValue;
    /**
     * 单价（美元/MMBTU）
     */
    @TableField("unit_price")
    private BigDecimal unitPrice;
    /**
     * 投保额
     */
    @TableField("sum_insure")
    private BigDecimal sumInsure;
    /**
     * 费率
     */
    @TableField("rate")
    private BigDecimal rate;
    /**
     * 保费合计（美元）
     */
    @TableField("total_premium_dollar")
    private BigDecimal totalPremiumDollar;
    /**
     * 保费合计（人民币）
     */
    @TableField("total_premium_rmb")
    private BigDecimal totalPremiumRmb;
    /**
     * 第三方计量公司
     */
    @TableField("third_party_corporation")
    private String thirdPartyCorporation;
    /**
     * 检验费
     */
    @TableField("inspect_fee")
    private BigDecimal inspectFee;
    /**
     * 是否同步（1：同步，2：未同步）
     */
    @TableField("order_detail_synchronous")
    private Integer orderDetailSynchronous;
    /**
     * 备注
     */
    @TableField("order_detail_remark")
    private String orderDetailRemark;
    /**
     * 初始账户余额
     */
    @TableField("account_initial_balance")
    private BigDecimal accountInitialBalance;
    /**
     * 实付金额
     */
    @TableField("paid_amount")
    private BigDecimal paidAmount;
    /**
     * 账户余额（更新）
     */
    @TableField("account_balance")
    private BigDecimal accountBalance;

    /**
     * 加油时间
     */
    @TableField("refuel_time")
    @JsonFormat(timezone = "GMT+8", pattern = "yyyy-MM-dd HH:mm:ss")
    private Date refuelTime;

    /**
     * VLSFO加油量（吨）
     */
    @TableField("vlsfo_oil_quantity")
    private String vlsfoOilQuantity;

    /**
     * VLSFO油价（美元/吨）
     */
    @TableField("vlsfo_oil_price")
    private BigDecimal vlsfoOilPrice;

    /**
     * LSMGO加油量（吨）
     */
    @TableField("lsmgo_oil_quantity")
    private String lsmgoOilQuantity;

    /**
     * LSMGO油价（美元/吨）
     */
    @TableField("lsmgo_oil_price")
    private BigDecimal lsmgoOilPrice;

    /**
     * 燃油供应商
     */
    @TableField("fuel_supplier")
    private String fuelSupplier;
}
